import axios from 'axios';

console.log('[Request] 创建 axios 实例');

const request = axios.create({
  baseURL: 'http://localhost:8080',
  timeout: 5000
});

// request.js
// request.interceptors.request.use(
//   config => {
//     let token = localStorage.getItem('hr_token');
//     if (!token) {
//       token = localStorage.getItem('user_token'); // fallback 到 user_token
//     }
//     if (token) {
//       config.headers['Authorization'] = 'Bearer ' + token;
//       console.log('[Request] 添加 Authorization:', config.headers['Authorization']);
//     }
//     return config;
//   },
//   error => {
//     console.error('[Request] 请求拦截出错', error);
//     return Promise.reject(error);
//   }
// );


// request.interceptors.request.use(
//   config => {
//     let token = localStorage.getItem('hr_token');
//     if (!token) {
//       token = localStorage.getItem('user_token');
//     }
//     if (token) {
//       config.headers['Authorization'] = 'Bearer ' + token;
//       console.log('[Request] 添加 Authorization:', config.headers['Authorization']);
//     } else {
//       console.log('[Request] 未找到 token');
//     }
//     console.log('[Request] 完整的请求配置:', config);
//     return config;
//   },
//   error => {
//     console.error('[Request] 请求拦截出错', error);
//     return Promise.reject(error);
//   }
// );





request.interceptors.request.use(
  config => {
    // 打印当前页面的 token 状态
    const hrToken = localStorage.getItem('hr_token');
    const userToken = localStorage.getItem('user_token');
    console.log('[Request] 当前存储的 HR token:', hrToken);
    console.log('[Request] 当前存储的 User token:', userToken);
    
    let token = hrToken;
    if (!token) {
      token = userToken;
    }
    
    if (token) {
      config.headers['Authorization'] = 'Bearer ' + token;
      console.log('[Request] 添加 Authorization:', config.headers['Authorization']);
    } else {
      console.log('[Request] 未找到 token，不添加 Authorization 头');
    }
    
    console.log('[Request] 请求 URL:', config.url);
    console.log('[Request] 请求方法:', config.method);
    console.log('[Request] 完整的请求头:', {...config.headers});
    
    return config;
  },
  error => {
    console.error('[Request] 请求拦截出错', error);
    return Promise.reject(error);
  }
);

export default request;